Алексей Oкружко - Чистая архитектура: Понять. Адаптировать. Использовать

Поделиться
HTML-код
  • Опубликовано: 24 ноя 2022
  • С чего мы обычно начинаем разработку приложения? В подавляющем большинстве - с выбора фреймворка и базы данных, с проектирования таблиц и их связей. Потом пытаемся на все это натянуть бизнес логику и получаем "большой комок грязи". Все это приводит к сложности поддержки, высокой связанности кода и т.д.
    В докладе расскажу, как этого можно избежать. Рассмотрим чистую архитектуру как подход к проектированию приложения.
    Основная проблема большинства докладов по этой теме - сухая теория. Поэтому мы попробуем на примере разработки простого приложения разобраться с данным подходом в формате лайв кодинга.
  • НаукаНаука

Комментарии • 17

  • @sergus82
    @sergus82 Год назад +3

    Спасибо за доклад!
    В одном из недавних проектов применяли данный подход (схожий процентов на 80-85, с некоторыми отличиями). Описанные преимущества действительно имеют место быть.
    На счёт упомянутого недостатка "более высокий порог входа в проект" (45:10). Говорилось, что нужен некий "onboarding" для новых сотрудников. Наверное объяснение "где что лежит" нужно для любой архитектуры. И, на мой взгляд, унифицированная структура и разделение на слои, как раз наоборот, помогали новым сотрудникам довольно быстро вливаться в проект.

    • @conacry
      @conacry Год назад +2

      Спасибо! При активной разработке, используя DDD и Clean Arch, мы столкнулись с проблемой, что многие разработчики понимают концепции немного по разному, что приводило к вариациям в коде. Например: это логика usecase или можно все сделать в адаптерах. Поэтому мы утраивали несколько встреч, чтобы синхронизировать понимание. Также для новых разработчиков в начале сложно понять преимущества такого подхода. Мое понимание onboarding было связано именно с этим

  • @senin24
    @senin24 Год назад +1

    Полезная и сложная тема, которая требует от слушателей не только напряжения внимания, но и достаточного опыта в энтерпрайз разработке приложений с запутанной бизнес-логикой. И горьким личным опытом как относительно простые и понятные приложения с течением времени превращаются в комок грязи, если в архитектуре кода не была предусмотрена изоляция слоев.

  • @nikitavashkulatov890
    @nikitavashkulatov890 Год назад +2

    Хороший доклад! Еще из практики я бы посоветовал Get your hands dirty with Clean Architecture. Можете подсказать где почитать лучше про event driven, как это здесь сделано. Заинтересовало

  • @user-fg3ed2gz7y
    @user-fg3ed2gz7y Месяц назад +1

    С терминологий большая беда, как в чистой архитектуре появились агрегаты и сервисы ? Это ведь одно и то же. То что создает вам инварианты между несколькими сущностями.
    Что вы там переименовывали и зачем не понятно, но это не страшно. Гейтвей у вас выступает в роли ДАО ? почему сервисы оказались на уровне Ентити ? потому что вы не правильно переименовали ?

  • @AleksandrIlyin
    @AleksandrIlyin Месяц назад

    Подскажите как называется тема в IDEA, используемая в докладе)

  • @smaginkv
    @smaginkv Год назад

    Спасибо за интересный доклад! А исходники будут?

    • @JUGNsk
      @JUGNsk  Год назад +2

      Привет! Вот ссылка - github.com/conacry/santa-post-ca

  • @rhino723
    @rhino723 3 месяца назад

    Подарок, знает ребенка и проверяет его поведени ? Интересная логика из реального мира.

    • @user-mp4yx7ss8b
      @user-mp4yx7ss8b 3 месяца назад

      Мне кажется, что первоначально было написано через ДДД'шныц агрегат, но позже решили упростить и убрать его. Хотя полностью согласен, в таком контексте выглядит не очень

  • @user-zt2ob3le7e
    @user-zt2ob3le7e 5 месяцев назад +2

    Почему подарок знает про ребёнка? Ещё и решает, какого размера ему быть в зависимости от поведения ребёнка?! Ничего не смущает? Дальше не смотрел.

    • @valera924
      @valera924 4 месяца назад

      А что не так? Ну не ребёнку же решать, какого размера получать подарок

    • @markhunt6499
      @markhunt6499 8 дней назад

      Предложи свой вариант, как должно было быть

  • @sdsd-ec8rw
    @sdsd-ec8rw Месяц назад

    ))) сопит как паровоз, когда зачем-то пишет код, хотя у самого уже готовый проект имеется, можно спокойно показывать и рассказывать. Но парень, видно, не ищет легких путей))

    • @markhunt6499
      @markhunt6499 8 дней назад

      Когда пишется код, можно следить за мыслью спикера. Когда он уже показывает кучу готового кода, это сложнее для зрителя. Надо изучить код, войти к контекст. Поэтому, лайвкодинг хороший вариант.

  • @andreypozin8048
    @andreypozin8048 10 месяцев назад +3

    Хуже этого доклада не видел за очень долгое время...просто отвратно донес идею Дяди Боба....лучше читать статьи с докладами в оригинале чем такое

    • @markhunt6499
      @markhunt6499 8 дней назад

      Не поделишься ссылками, или своей версией реализации?